#ifndef INTERFACETYPEA_H
#define INTERFACETYPEA_H

#include <iostream>
using namespace std;

#include "rtti.h"

class InterfaceTypeA : public rtti::Object
{
public:
    RTTI_DECLARE_OBJECT(InterfaceTypeA)
    RTTI_BEGIN_CAST_MAP()
        RTTI_CAST_ENTRY(rtti::Object)
        RTTI_CAST_ENTRY(InterfaceTypeA)
    RTTI_END_CAST_MAP()
public:
    InterfaceTypeA() {
        cout << "InterfaceTypeA" << endl;
    }

    virtual ~InterfaceTypeA() {
        cout << "~InterfaceTypeA" << endl;
    }

    virtual void myname() {
        cout << "InterfaceTypeA hello world" << endl;
    }
};

#endif // INTERFACETYPEA_H
